草庐IT

SQL INSERT INTO SELECT 语句

全部标签

mysql - 没有使用 MySQL Connector/J 的服务器端准备语句

据我了解,MySQL5.1支持服务器端准备语句。因此下面的代码应该准备语句一次,然后执行10次:Connectionconn=ds.getConnection();PreparedStatementstmt=conn.prepareStatement("SELECTCOUNT(*)FROMusersWHEREuser_id=?");for(inti=0;i我在mysqld日志中看到的是直接执行的查询:SELECT@@session.tx_isolationSELECTUSER()SELECTCOUNT(*)FROMusersWHEREuser_id='FOO0'SELECTCOUNT(

MYSQL Inner Join if 语句

我正在尝试将3个表连接在一起,但使用IF语句仅运行特定查询我有一个用户表、客户表和员工表。下面的第一部分有效:SELECTuser.`userID`,`username`,`user`.email,`registeredBy`,`registeredDate`,CONCAT(staff.firstName,'',staff.lastName)ASstaffNameFROM`user`INNERJOIN`level`ON`user`.levelID=`level`.levelIDINNERJOIN`staff`ON`user`.registeredBy=`staff`.userID我需要

java - 从java中的mysql select语句中检索数据

遇到这个问题..我确定我遗漏了一些简单的东西,但我只是想要javamysqlselect语句中的select语句的结果,但我不断得到:com.mysql.jdbc.JDBC4ResultSet@1c190c99这是我的代码:PreparedStatementFindstatement;Findstatement=con.prepareStatement("SELECTCodefromDataMasterwhereDataName=(?)");Findstatement.setString(1,Name);//Ihaveavariableinmyfilenamed'Name'Result

php - 在 MySQL 语句或 PHP 代码中执行简单的算术运算

例如,假设我有一个包含两个整数列start和end的数据结构,但我实际上对开始值以及开始值和结束值之间的差异感兴趣.我可以发送这个查询:SELECTstart,end-startFROMfoo;或者,我可以做SELECTstart,endFROMfoo;并在PHP中执行$end-$start操作。将这些简单的操作留给MySQL会更好吗? 最佳答案 我会将“$end-$start”归类为业务逻辑,它属于模型层而不是持久层。这意味着在PHP中执行计算。这有很多好处:如果以后更改数据库,则不需要存在相同的运算符。您可以对执行计算的逻辑进行

php - SQL 查询将多个值匹配到 select 语句中的一个字段

我想选择列A的不同值,其中列B=集合S的任何成员。有没有办法直接在SQL中执行此操作而无需循环然后在代码中过滤?谢谢编辑:集合S是一个PHP数组。这有什么不同吗? 最佳答案 将IN子句与值列表或子查询一起使用(不确定MySql是否支持,因为我使用的是Oracle)。匹配项可以在多个列上。SELECTcolumn_aFROMmytableWHEREcolumn_bIN(1,2,3)SELECTcolumn_aFROMmytableWHEREcolumn_bIN(SELECTcolumn_cFROMmyothertable)

mysql - 何时使用不同的 never-rejected ("insert or update") MySQL 语句?

应用程序中的一个标准问题是,如果记录不存在则插入,如果存在则更新。在PRIMARYKEY未知的情况下,这通常通过发出SELECT然后运行​​INSERT或UPDATE如果找到记录。但是,据我所知,似乎至少有三种方法可以将记录插入数据库,即使记录已经存在。就个人而言,如果新的插入请求已经存在,我宁愿删除它,但是在某些情况下,您可能宁愿删除数据库中的记录并使用新的记录。CREATETABLEIFNOTEXISTS`table`(`id`int(10)unsignedNOTNULLAUTO_INCREMENT,`foo`int(10)unsignedNOTNULL,`bar`int(10)u

mysql - 如何根据 CASE 语句的值编写 WHERE 语句?

以下查询返回表names中所有new_name的结果集SELECTCASEWHENnickname=''THENfullnameELSEnicknameENDASnew_name,FROMnames我正在尝试使用以下查询按new_name进行搜索SELECTCASEWHENnickname=''THENfullnameELSEnicknameENDASnew_name,FROMnamesWHEREnew_nameLIKE'%Joh%'但是我得到了错误“where子句”中的未知列“new_name”有没有一种方法可以在不使用子查询的情况下使用此功能? 最佳答案

java - 关于mysql中的Query语句

我使用此代码在mysql中进行分页(使用Struts2+Hibernate):Queryquery=getSession().createQuery("fromGovOffice");query.setFirstResult(0);query.setMaxResult(100);Listlist=query.list();这将返回从第一条记录开始的GovOffice列表,每页显示100条记录。假设我有100,000条记录,这个“来自GovOffice”的查询是否首先获取所有100,000条记录?通过setFirstResult和setMaxReSult它将限制100,000到100条记

带有 IF 语句的 MySQL VIEW

我在mMySQL中有两个表:-news(news_id,news_titel,news_file_id)-files(file_id,file_path,file_name)我想用这些列创建MySQLVIEW:-news_view(news_id,news_title,news_file_id,news_file_path)但是,如果news_file_id>0那么,我得到文件的路径(file_path+file_name)否则news_file_path应该是0我该如何做这个VIEW?编辑但是如果我想再添加两个表怎么办:categories(category_id,category_

php - MySQL 连接两个表,其中来自 PHP 变量的 WHERE 语句已经存在

我通常做这样的连接:$query="SELECTtable1.ColA,table2.ColC"."FROMtable1,table2"."WHEREtable1.uid=table2.uid";但在这种情况下,WHERE部分已用于使用PHP变量指定记录。在这种情况下,我该如何加入表2?SELECTSQL_CALC_FOUND_ROWSColA,ColBFROMTable1WHEREvalue=$value 最佳答案 他们已经加入了。与SELECTtable1.ColA,table2.ColCFROMtable1INNERJOINt